Po Lu [Sat, 8 Apr 2023 01:35:19 +0000 (09:35 +0800)]
Document selections on Android more thoroughly
* doc/lispref/elisp.texi (Top):
* doc/lispref/frames.texi (Frames): Add ``Accessing Selections''
to menu.
(Accessing Selections, X Selections, Other Selections): New
nodes.
Po Lu [Fri, 7 Apr 2023 00:25:54 +0000 (08:25 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Eli Zaretskii [Thu, 6 Apr 2023 19:14:59 +0000 (22:14 +0300)]
Avoid failing the build when org-version.el is updated
* lisp/Makefile.in: Force recompilation of all Org files when
org-version.el is updated with a new Org version.
Eli Zaretskii [Thu, 6 Apr 2023 18:38:20 +0000 (14:38 -0400)]
Merge from origin/emacs-29
305246d9726 Add emoji-zoom-reset
470d269ec1f Make emoji-zoom-{increase,decrease} set text properties c...
63d4a86f8d1 Fix transforming sliced images
5e1953a8f85 ; * etc/NEWS: Minor copyedits of entry for 'keymap-*' fun...
6b9f9df9454 ; Improve documentation of 'declare-function'
81d1f46d0fe ; Avoid compiler warning in eglot.el.
38cdfcb2128 ; Fix description of new 'keymap-*' functions
257090b8728 Adapt EMBA scripts.
90c07d3fdd2 Another terminology fix in ELisp reference manual
a832bc7090c Correct terminology in Elisp Reference Manual
db308233cb3 Comment out GNUSTEP jobs on EMBA (again)
8c1b1022439 ; * lisp/image.el (put-image): Doc fix.
eda88c63adf ; * doc/emacs/trouble.texi (Checklist): Minor grammar fix.
728bc09cf3c Fix regexp string escaping mistake in vhdl-mode.el (bug#6...
479626dbac9 Update to Org 9.6.3-2-gf2949d
5a1c9aace70 ; Add a bit more docstring to tsx-ts-mode (bug#62429)
86cf9fd932c Eglot: don't watch directories that don't exist
82d0b6c64ea ; * lisp/subr.el (use-dialog-box-p): Fix last change.
3619663f982 Preserve peer information for web page in eww-readable
cb8d6ab648f * lisp/subr.el (use-dialog-box-p): Fix conditions for GUI...
fb2c4409207 ; * lisp/progmodes/c-ts-mode.el (c++-ts-mode): Add some n...
# Conflicts:
# etc/NEWS
Eli Zaretskii [Thu, 6 Apr 2023 18:38:16 +0000 (14:38 -0400)]
; Merge from origin/emacs-29
The following commit was skipped:
89e337c3fc9 ; Make sure 'eshell-command' tests don't prompt the user
Eli Zaretskii [Thu, 6 Apr 2023 18:38:13 +0000 (14:38 -0400)]
Merge from origin/emacs-29
b39c3cd1125 ; * etc/NEWS: Fix typos.
89ac5ba11c7 Fix ModelSim error regexp in vhdl-mode
24ed9c7ae78 ; * doc/emacs/trouble.texi (Checklist): Minor copyedits (...
d1d39a0f09c Document enhancements in handling of echo-area messages
# Conflicts:
# etc/NEWS
Eli Zaretskii [Thu, 6 Apr 2023 18:38:04 +0000 (14:38 -0400)]
; Merge from origin/emacs-29
The following commits were skipped:
46209b2453b ; Fix last change
21a4ee209c1 Fix new Eshell tests on MS-Windows
e2ebf3995d0 ; Auto-commit of loaddefs files.
6419d78fa6f Fix using background commands in 'eshell-command'
Michael Albinus [Thu, 6 Apr 2023 14:31:49 +0000 (16:31 +0200)]
Describe how to run Emba tests locally
* admin/notes/emba: Describe how to run Emba tests locally.
* test/infra/Dockerfile.emba (emacs-eglot): Adapt software selection.
Robert Pluim [Wed, 5 Apr 2023 15:24:38 +0000 (17:24 +0200)]
Add emoji-zoom-reset
* lisp/international/emoji.el (emoji-zoom-map): Add emoji-zoom-reset.
(emoji-zoom-reset): New function, it resets the zoom level.
* lisp/international/mule-cmds.el (ctl-x-map): Add emoji-zoom-reset.
* etc/NEWS: Announce new command.
Robert Pluim [Wed, 5 Apr 2023 13:19:13 +0000 (15:19 +0200)]
Make emoji-zoom-{increase,decrease} set text properties correctly
* lisp/international/emoji.el (emoji-zoom-increase): Ensure that we're
increasing the :height of the anonymous face at point, rather than
having two :height properties, which appeared to work by
accident, and don't error at eob. (Bug#62675)
Liu Hui [Tue, 4 Apr 2023 01:13:32 +0000 (09:13 +0800)]
Restore positions reliably for abbreviated file names in saveplace.el
* lisp/saveplace.el (save-place-abbreviate-file-names): Add setter
function for rewriting `save-place-alist'. Update docstring.
(save-place-to-alist): Save Abbreviated dired-filename.
(save-place-load-alist-from-file): Move this function above
`save-place-abbreviate-file-names' since it is used in the :set
function.
(save-place-find-file-hook):
(save-place-dired-hook): Use abbreviated file name when
`save-place-abbreviate-file-names' is non-nil.
(Bug#62413)
Wilhelm H Kirschbaum [Sun, 2 Apr 2023 07:43:20 +0000 (09:43 +0200)]
Handle electric heredocs pairs in elixir-ts-mode
* lisp/progmodes/elixir-ts-mode.el
(elixir-ts--electric-pair-string-delimiter): New helper.
(elixir-ts-mode): Add post-self-insert-hook. (Bug#62536)
Wilhelm H Kirschbaum [Tue, 21 Mar 2023 14:34:48 +0000 (16:34 +0200)]
Propertize heredocs in elixir-ts-mode
* lisp/progmodes/elixir-ts-mode.el
(elixir-ts--syntax-propertize-query): New variable.
(elixir-ts--syntax-propertize): New helper.
(elixir-ts-mode): Set syntax-propertize-function. (Bug#62536)
Eli Zaretskii [Thu, 6 Apr 2023 09:35:17 +0000 (12:35 +0300)]
Fix transforming sliced images
* lisp/image.el (image--get-image): Support sliced images
(bug#62679). Doc fix.
(image-mouse-decrease-size, image-mouse-increase-size)
(image-decrease-size, image-increase-size): Doc fixes.
Alan Mackenzie [Thu, 6 Apr 2023 09:14:56 +0000 (09:14 +0000)]
CC Mode: Miscellaneous coding fixes in c-forward-type
This fixes bug #62339.
* lisp/progmodes/cc-engine.el (c-forward-type): In the implicit int handling,
respect the setting of the parameter stop-at-end. In the case "normal
identifier", insert a missing (c-forward-syntactic-ws); this fixes the bug.
Here, correct the wrong return value `prefix' to t.
Po Lu [Thu, 6 Apr 2023 02:06:28 +0000 (10:06 +0800)]
; Fix compiler warning
* src/xterm.c (x_term_init): Fix:
"xterm.c", line 30759: warning: improper pointer/integer
combination: op "="
Po Lu [Thu, 6 Apr 2023 01:56:34 +0000 (09:56 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Po Lu [Thu, 6 Apr 2023 01:56:23 +0000 (09:56 +0800)]
Implement `yank-media' on Android
* doc/emacs/android.texi (Android Windowing): Update selection
restrictions.
* java/org/gnu/emacs/EmacsClipboard.java (EmacsClipboard): New
functions `getClipboardTargets' and `getClipboardData'.
* java/org/gnu/emacs/EmacsSdk11Clipboard.java
(EmacsSdk11Clipboard, getClipboardTargets, getClipboardData):
Implement.
* java/org/gnu/emacs/EmacsSdk8Clipboard.java: Stub out new
functions.
* lisp/term/android-win.el (android-get-clipboard-1): Implement
MIME type targets.
* src/android.c (android_exception_check)
(android_exception_check_1, android_exception_check_2): Fix
punctuation in warning message.
(android_exception_check_nonnull_1): New function.
* src/android.h: Update prototypes.
* src/androidselect.c (struct android_emacs_clipboard): New
methods.
(android_init_emacs_clipboard): Initialize new methods.
(Fandroid_get_clipboard_targets, android_xfree_inside)
(Fandroid_get_clipboard_data): New functions.
(syms_of_androidselect): Define new subrs.
Andrea Corallo [Wed, 5 Apr 2023 16:17:58 +0000 (18:17 +0200)]
Comp: Fix limplification pass (bug#62537)
* test/src/comp-resources/comp-test-funcs.el (comp-test-62537-1-f)
(comp-test-62537-2-f): New functions.
* lisp/emacs-lisp/comp.el (comp-jump-table-optimizable): Make it
stricter add a comment.
Eli Zaretskii [Wed, 5 Apr 2023 13:50:58 +0000 (16:50 +0300)]
; * etc/NEWS: Minor copyedits of entry for 'keymap-*' functions.
Alan Mackenzie [Wed, 5 Apr 2023 13:02:12 +0000 (13:02 +0000)]
CC Mode: Fix fontification problems shown by test file templates-20.cc
Also fix one problem evident in test file decls-10.cc.
* lisp/progmodes/cc-engine.el (c-brace-stack-at): Bind
c-record-type-identifiers to nil to prevent called functions recording
identifiers spuriously.
(c-forward-<>-arglist-recur): Revert the ill-advised optimization from autumn
2022 which attempted to avoid re-marking c-type text properties inside angle
bracket arglists.
(c-forward-decl-or-cast-1): Accept the semicolon at the end of "t8 * id;" as
sufficient evidence to fontify as a declaration (not a multiplication).
* lisp/progmodes/cc-fonts.el (c-font-lock-c++-using): No longer fontify the
last component of foo::bar with c-reference-face-name.
Eli Zaretskii [Wed, 5 Apr 2023 09:31:01 +0000 (12:31 +0300)]
; Improve documentation of 'declare-function'
* doc/lispref/functions.texi (Declaring Functions):
* lisp/subr.el (declare-function): Document explicitly that
ARGLIST argument, if provided, should include the parentheses.
Eli Zaretskii [Wed, 5 Apr 2023 09:23:54 +0000 (12:23 +0300)]
; Avoid compiler warning in eglot.el.
Eli Zaretskii [Wed, 5 Apr 2023 08:31:15 +0000 (11:31 +0300)]
; Fix description of new 'keymap-*' functions
* doc/lispref/keymaps.texi (Prefix Keys): Fix example (bug#62673).
(Functions for Key Lookup): Clarify the possible values of KEYMAP
argument of 'keymap-lookup'.
(Active Keymaps): Fix typo in function name; add cross-reference.
Wilhelm H Kirschbaum [Sun, 2 Apr 2023 09:28:27 +0000 (11:28 +0200)]
Improve sigil fontification for elixir-ts-mode
* lisp/progmodes/elixir-ts-mode.el:
(elixir-ts--font-lock-settings): Update sigil queries.
Wilhelm H Kirschbaum [Sun, 2 Apr 2023 09:26:02 +0000 (11:26 +0200)]
Improve list indentation for elixir-ts-mode
* lisp/progmodes/elixir-ts-mode.el:
(elixir-ts--argument-indent-offset): Add empty line check.
(elixir-ts--argument-indent-anchor): Change ERROR offset.
* test/lisp/progmodes/elixir-ts-mode-resources/indent.erts:
Add test.
Dmitry Gutov [Wed, 5 Apr 2023 00:00:57 +0000 (03:00 +0300)]
ruby-ts-mode: Add more constructs to treesit-sexp-type-regexp
* lisp/progmodes/ruby-ts-mode.el (ruby-ts-mode): Add more
constructs to treesit-sexp-type-regexp (bug#62086).
Po Lu [Tue, 4 Apr 2023 23:58:05 +0000 (07:58 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Michael Albinus [Tue, 4 Apr 2023 18:01:19 +0000 (20:01 +0200)]
Adapt EMBA scripts.
* test/infra/Dockerfile.emba (emacs-gnustep): Add zlib1g-dev.
Remove make instrumentation.
* test/infra/gitlab-ci.yml (build-image-gnustep, test-gnustep): Uncomment.
Michael Albinus [Tue, 4 Apr 2023 11:37:18 +0000 (13:37 +0200)]
Improve Tramp robustness
* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
Check for `tramp-string-empty-or-nil-p'.
Eli Zaretskii [Tue, 4 Apr 2023 11:22:56 +0000 (14:22 +0300)]
Another terminology fix in ELisp reference manual
* doc/lispref/frames.texi (Mouse Tracking):
* doc/lispref/commands.texi (Motion Events, Event Examples):
'track-mouse' is a macro, not a special form.
Shynur [Tue, 4 Apr 2023 07:07:37 +0000 (15:07 +0800)]
Correct terminology in Elisp Reference Manual
* doc/lispref/functions.texi (Function Names): 'defun' is a macro, not
a special form. (Bug#62661)
Copyright-paperwork-exempt: yes
Michael Albinus [Tue, 4 Apr 2023 11:00:51 +0000 (13:00 +0200)]
Comment out GNUSTEP jobs on EMBA (again)
* test/infra/gitlab-ci.yml (build-image-gnustep, test-gnustep):
Comment out jobs due to bug#62210.
Po Lu [Tue, 4 Apr 2023 10:35:11 +0000 (18:35 +0800)]
; * lisp/subr.el (read-char-from-minibuffer): Fix typo.
Po Lu [Tue, 4 Apr 2023 10:34:44 +0000 (18:34 +0800)]
Update Android port
* lisp/subr.el (read-char-from-minibuffer): Don't use undefined
variable. Reported by Robert Pluim.
Michael Albinus [Tue, 4 Apr 2023 07:43:09 +0000 (09:43 +0200)]
Display unlock-file warning only when file locks are enabled
* lisp/files.el (remote-file-name-inhibit-locks): Fix docstring.
* lisp/userlock.el (userlock--handle-unlock-error):
Display warning only when `create-lockfiles' is non-nil. (Bug#62614)
* lisp/net/tramp.el (tramp-handle-unlock-file): Raise a warning
only when `create-lockfiles' is non-nil or
`remote-file-name-inhibit-locks' is nil.
Juri Linkov [Tue, 4 Apr 2023 06:42:10 +0000 (09:42 +0300)]
ruby-ts-mode: Recognize more nodes as sexps
* lisp/progmodes/ruby-ts-mode.el (ruby-ts-mode):
Add "unless" to 'treesit-sexp-type-regexp'.
Po Lu [Mon, 3 Apr 2023 23:49:48 +0000 (07:49 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Dmitry Gutov [Mon, 3 Apr 2023 20:39:41 +0000 (23:39 +0300)]
ruby-ts-mode: Recognize more nodes as sexps
* lisp/progmodes/ruby-ts-mode.el (ruby-ts-mode): Argument
treesit-sexp-type-regexp with interpolation, instance_variable,
global_variable (bug#62086, bug#62416).
Eli Zaretskii [Mon, 3 Apr 2023 16:32:46 +0000 (19:32 +0300)]
; * lisp/image.el (put-image): Doc fix.
Michael Albinus [Mon, 3 Apr 2023 14:00:11 +0000 (16:00 +0200)]
; Fix last change
Andrew G Cohen [Mon, 3 Apr 2023 13:49:55 +0000 (21:49 +0800)]
; * lisp/gnus/gnus-sum.el (gnus-summary-move-article): Just setq
Robert Pluim [Mon, 3 Apr 2023 12:42:54 +0000 (14:42 +0200)]
; * doc/emacs/trouble.texi (Checklist): Minor grammar fix.
Michael Albinus [Mon, 3 Apr 2023 11:18:55 +0000 (13:18 +0200)]
Fix some `unwind-protect' forms
* lisp/net/tramp-smb.el (tramp-smb-handle-file-acl)
(tramp-smb-handle-set-file-acl): Remove superfluous `unwind-protect'.
* test/lisp/auth-source-tests.el
(auth-source-test-secrets-create-secret): Fix `unwind-protect' handler.
* test/lisp/net/tramp-tests.el (tramp-test38-find-backup-file-name):
Add dummy cleanup form.
Mattias Engdegård [Mon, 3 Apr 2023 10:57:54 +0000 (12:57 +0200)]
Fix regexp string escaping mistake in vhdl-mode.el (bug#62508)
* lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Quote brackets
correctly.
Po Lu [Mon, 3 Apr 2023 10:39:10 +0000 (18:39 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Po Lu [Mon, 3 Apr 2023 10:24:02 +0000 (18:24 +0800)]
; ; * src/androidselect.c (Fandroid_clipboard_exists_p): Add check.
Po Lu [Mon, 3 Apr 2023 08:15:54 +0000 (16:15 +0800)]
Improve portability of newly added icons
* etc/images/symbols/README: Document what to do with changed icons.
* etc/images/symbols: Add portable variants of SVG icons.
Yuan Fu [Sat, 1 Apr 2023 23:22:50 +0000 (16:22 -0700)]
Modify chevron icons and add some more
* etc/images/symbols/chevron_left_16.svg:
* etc/images/symbols/chevron_right_16.svg: Make them shorter so that
they appear roughly the same size as up and down chevrons.
* etc/images/symbols/cross_circle_fill_16.svg:
* etc/images/symbols/heart_16.svg:
* etc/images/symbols/heart_fill_16.svg:
* etc/images/symbols/heart_half_16.svg:
* etc/images/symbols/minus_circle_fill_16.svg:
* etc/images/symbols/plus_circle_fill_16.svg: New icons.
Kyle Meyer [Mon, 3 Apr 2023 03:03:32 +0000 (23:03 -0400)]
Update to Org 9.6.3-2-gf2949d
Po Lu [Mon, 3 Apr 2023 02:23:33 +0000 (10:23 +0800)]
Update Android port
* src/sfnt.c (sfnt_normalize_vector): Don't rely on undefined
sign extension semantics.
João Távora [Mon, 3 Apr 2023 00:40:30 +0000 (01:40 +0100)]
Eglot: Bump to 1.14
* lisp/progmodes/eglot.el (Version): Bump to 1.14
(Package-Requires): Require ElDoc 1.14.0
* etc/EGLOT-NEWS: Update.
Po Lu [Mon, 3 Apr 2023 00:12:03 +0000 (08:12 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
João Távora [Sun, 2 Apr 2023 23:33:03 +0000 (00:33 +0100)]
Merge from origin/emacs-29
3bdbb66efb9 ; CONTRIBUTE: Minor stylistic changes.
d0eb12e8d3c Fix typo in section 14.1 of Emacs Manual
b2fbec37f39 ; * etc/EGLOT-NEWS: Clarify scope of topmost section
131ec049db0 Eglot: unbreak eglot-extend-to-xref on w32
0622e1f29f6 Eglot: ensure server shutdown turns off eglot-inlay-hints...
59f66ea3027 ; * lisp/emacs-lisp/package-vc.el: Remove completed item ...
d23dc3dd7e3 ; * lisp/emacs-lisp/package-vc.el (package-vc): Fix manua...
4508a024e81 ; Clarify documentation of 'cursor' text property
d2e82817a3f Add two typescript-ts-mode faces (bug#62429)
10918fc9d24 Fix scrolling window when point moves up
9b32bc134c4 Improve documentation of 'defcustom's :set keyword
ab4273056e0 Comp fix calls to redefined primtives with op-bytecode (b...
c98929c7e18 ; Fix last change
a14c3f62a67 ; Fix last change
09fece5722f Fix duplicate defcustom in eww.el
e45bd10a3d9 Fix indentation regression in 'C-h l'
46fd10a7600 * doc/misc/tramp.texi (Remote shell setup): Clarify use o...
João Távora [Sun, 2 Apr 2023 23:00:18 +0000 (00:00 +0100)]
; * etc/EGLOT-NEWS (Upcoming 1.14): Update.
João Távora [Sun, 2 Apr 2023 22:40:31 +0000 (23:40 +0100)]
Eldoc: bump package version to 1.14.0
* lisp/emacs-lisp/eldoc.el (Version): Bump to 1.14.0
João Távora [Sun, 2 Apr 2023 22:38:37 +0000 (23:38 +0100)]
; Eldoc: fix doc of e-d-functions w.r.t. :origin keyword
* lisp/emacs-lisp/eldoc.el (eldoc-documentation-functions): Fix.
João Távora [Sun, 2 Apr 2023 22:33:23 +0000 (23:33 +0100)]
; Eglot: removed unused dependency on 'array.el'
* lisp/progmodes/eglot.el (array): Don't require
João Távora [Sun, 2 Apr 2023 22:31:10 +0000 (23:31 +0100)]
Eglot: load built-in GNU ELPA dependencies explicitly
Because of outstanding bug#62576, it's way to easy for users to get
confused by the M-x package-install process for Eglot.
Whenever an Eglot release depends on a new version of a GNU ELPA :core
package which is _also_ provided built-in, M-x package-install will
install that dependency, but will not always load it on top of the
built-in one.
The solution is to not use "require" for now. This may potentially
lead to double "loads", but that should in principle be idempotent.
* lisp/progmodes/eglot.el (project, eldoc, seq, flymake, xref, jsonrpc)
(external-completion): Load, don't require.
João Távora [Wed, 29 Mar 2023 18:30:04 +0000 (19:30 +0100)]
Eglot: improve caching in eglot-completion-at-point
When answering the :textDocument/completion request, LSP servers
provide a :isIncomplete flag in the response, which allows Eglot to
know if "further typing should result in recomputing [the completions]
list.
If :isIncomplete is false (i.e. the full set was returned), Eglot
caches the response in a global variable eglot--capf-cache that
persists for the duration of the "completion session", taken to be the
interval between two calls to completion-in-region-mode.
If the cache has been set, and Eglot detects that "further typing" has
happened, it is safe to use the cache instead of making a request to
the server.
Thus eglot--capf-cache-flush, added to completion-in-region-mode-hook,
is used to flush this cache. Since the popular Company completion
package doesn't use completion-in-region-mode, eglot--capf-cache-flush
is also added to its company-after-completion-hook.
* lisp/progmodes/eglot.el (eglot--managed-mode): Set
'completion-in-region-mode-hook and company-after-completion-hook.
(eglot--capf-cache): New variable.
(eglot--capf-cache-flush): New function.
(eglot-completion-at-point): Rework.
* etc/EGLOT-NEWS: Update.
João Távora [Sat, 25 Mar 2023 19:53:14 +0000 (19:53 +0000)]
Eglot: take advantage of new Eldoc options for signature doc
Only echo the "active signature", send all the other signatures for
the *eldoc* buffer.
* lisp/progmodes/eglot.el (eglot--sig-info): Rework protocol.
(eglot-signature-eldoc-function): Rework.
João Távora [Fri, 24 Mar 2023 22:17:44 +0000 (22:17 +0000)]
Eglot: declare support for markdown also for signatures
* lisp/progmodes/eglot.el
(eglot--accepted-formats): new helper.
(eglot-client-capabilities): use it.
João Távora [Fri, 24 Mar 2023 22:16:49 +0000 (22:16 +0000)]
Eglot: define eglot--ensure-list with defalias
This avoids annoying obsoletion warnings when compiling the whole buffer.
* lisp/progmodes/eglot.el (eglot--ensure-list): define with defalias.
João Távora [Wed, 29 Mar 2023 21:48:54 +0000 (22:48 +0100)]
Eglot: remove hacky advice of jsonrpc-request
The vast majority of Eglot sync requests to the server need to inform
the server of any pending changes to the buffer beforehand, so that
the server has up-to-date information to do its job.
But doing so at the expense of ugly advice of jsonrpc-request is ill
advised. Introduce eglot--request helper instead and use that.
Use this opportunity to conduct a review of Eglot sync requests and
come to the conclusion that all need to send any changes beforehand.
Nevertheless, an IMMEDIATE kwarg to eglot--request was added to
bypassing this.
* lisp/progmodes/eglot.el
(eglot--request): New helper.
(eglot-shutdown)
(eglot-execute-command)
(eglot-workspace-configuration)
(eglot--signal-textDocument/willSave)
(eglot--workspace-symbols)
(eglot--lsp-xrefs-for-method)
(xref-backend-apropos)
(eglot-format)
(eglot-completion-at-point)
(eglot-imenu)
(eglot-rename)
(eglot-code-actions): Use eglot--request.
Yuan Fu [Sun, 2 Apr 2023 22:09:41 +0000 (15:09 -0700)]
; Add a bit more docstring to tsx-ts-mode (bug#62429)
* lisp/progmodes/typescript-ts-mode.el:
(tsx-ts-mode): Explain a bit more.
Jim Porter [Fri, 31 Mar 2023 02:38:30 +0000 (19:38 -0700)]
Use the 'interactive' spec to set arguments for 'eshell-command'
* lisp/eshell/eshell.el (eshell-read-command): New function...
(eshell-command): ... use it. Additionally, require the COMMAND
argument, and rename ARG to TO-CURRENT-BUFFER.
Jim Porter [Fri, 31 Mar 2023 02:31:30 +0000 (19:31 -0700)]
Fix using background commands in 'eshell-command'
This regressed due to the patch for bug#53715, which changed how
Eshell pipelines return the processes in the pipeline (bug#62556).
* lisp/eshell/esh-cmd.el (eshell-parse-command): When creating
background commands, wrap the process(es) in a cons cell whose CAR is
':eshell-background'. This lets us use fewer heuristics...
(eshell-eval-command): ... here. Additionally, keep the result and
the incomplete delimiter separate.
* lisp/eshell/eshell.el (eshell-command): Check ':eshell-background'
and use a more-robust method for setting the output target.
* test/lisp/eshell/eshell-tests.el (eshell-test/eshell-command/simple)
(eshell-test/eshell-command/pipeline)
(eshell-test/eshell-command/background)
(eshell-test/eshell-command/background-pipeline): New tests.
João Távora [Sun, 2 Apr 2023 22:01:29 +0000 (23:01 +0100)]
Eglot: don't watch directories that don't exist
project-files isn't guaranteed to return existing files, so better
check if they exist because placing a watcher on them.
Originally reported at:
https://github.com/joaotavora/eglot/issues/1198
* lisp/progmodes/eglot.el (eglot-register-capability
workspace/didChangeWatchedFiles): Check if directories exist.
Stefan Monnier [Sun, 2 Apr 2023 21:54:02 +0000 (17:54 -0400)]
lisp/simple.el (inhibit-auto-fill): New var
* lisp/simple.el (inhibit-auto-fill): New var.
(internal-auto-fill): Obey it.
(newline): Use it instead of binding `auto-fill-function`, so
as to avoid messing up the state if something wants to enable/disable
`auto-fill-mode` during the course of the let binding (bug#62419).
Stefan Monnier [Sun, 2 Apr 2023 21:45:58 +0000 (17:45 -0400)]
src/eval.c: Fix bug#62419
Yup, almost 40 years after ELisp first combined them, buffer-local
and let bindings still don't work quite right :-(
The "automatically buffer-local if set" semantics should follow the
principle that it becomes buffer-local iff the var's current binding
refers to the top-level/global/non-let binding.
* src/eval.c (let_shadows_buffer_binding_p): Disregard non-global
let-bindings.
* test/src/eval-tests.el (eval-test--bug62419): New test.
Jim Porter [Sat, 1 Apr 2023 04:32:44 +0000 (21:32 -0700)]
; Add tests for synchronous processes in Eshell
Normally, Eshell only uses synchronous processes on MS-DOS, so this is
hard to test. To get around this, let the tests explicitly request
synchronous processes.
* lisp/eshell/esh-proc.el (eshell-supports-asynchronous-processes):
New variable...
(eshell-gather-process-output): ... use it, and remove some incorrect
code updating Eshell's internal markers (the async code path doesn't
do this, so neither should the sync path).
* lisp/eshell/esh-cmd.el (eshell-execute-pipeline): Use
'eshell-supports-asynchronous-processes'.
* test/lisp/eshell/esh-proc-tests.el
(esh-proc-test/emacs-command): New function.
(esh-proc-test/emacs-echo, esh-proc-test/emacs-upcase): New variables.
(esh-proc-test/synchronous-proc/simple/interactive)
(esh-proc-test/synchronous-proc/simple/command-result)
(esh-proc-test/synchronous-proc/pipeline/interactive)
(esh-proc-test/synchronous-proc/pipeline/command-result): New tests.
Eli Zaretskii [Sun, 2 Apr 2023 08:42:43 +0000 (11:42 +0300)]
; * lisp/subr.el (use-dialog-box-p): Fix last change.
Eshel Yaron [Fri, 31 Mar 2023 14:54:12 +0000 (17:54 +0300)]
Preserve peer information for web page in eww-readable
The :peer property in eww-data affects the face of the page title
in 'header-line-format' as set by 'eww-update-header-line-format'.
Preserving this property in eww-readable avoids having the header
line's appearance change when this command is called.
* lisp/net/eww.el (eww-readable): Preserve eww-data's :peer
property. (Bug#62574)
Eli Zaretskii [Sun, 2 Apr 2023 07:34:43 +0000 (10:34 +0300)]
* lisp/subr.el (use-dialog-box-p): Fix conditions for GUI dialogs.
Yuan Fu [Sun, 2 Apr 2023 06:14:15 +0000 (23:14 -0700)]
; * lisp/progmodes/c-ts-mode.el (c++-ts-mode): Add some notice.
Po Lu [Sun, 2 Apr 2023 01:11:00 +0000 (09:11 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Jim Porter [Sun, 19 Mar 2023 02:18:28 +0000 (19:18 -0700)]
Avoid shadowing variables in some Eshell command forms
* lisp/eshell/esh-cmd.el (eshell-rewrite-for-command): Make
'for-items' an uninterned symbol.
(eshell-as-subcommand): Correct docstring.
(eshell-do-command-to-value): Mark obsolete.
(eshell-command-to-value): Move binding of 'value' outside of the
macro's result, and remove call to 'eshell-do-command-to-value'.
* test/lisp/eshell/esh-cmd-tests.el
(esh-cmd-test/subcommand-shadow-value)
(esh-cmd-test/for-loop-for-items-shadow): New tests.
(esh-cmd-test/for-name-loop, esh-cmd-test/for-name-shadow-loop):
Rename to...
(esh-cmd-test/for-loop-name, esh-cmd-test/for-loop-name-shadow):
... these.
Yuan Fu [Fri, 31 Mar 2023 04:58:05 +0000 (21:58 -0700)]
Add some icons (bug#62562)
* etc/images/symbols/README: New file.
* etc/images/symbols/*.svg: New icons.
Jim Porter [Sat, 1 Apr 2023 17:28:02 +0000 (10:28 -0700)]
; Make sure 'eshell-command' tests don't prompt the user
* test/lisp/eshell/eshell-tests.el
(eshell-test/eshell-command/background)
(eshell-test/eshell-command/background-pipeline): Wait for the process
to finish.
Michael Albinus [Sat, 1 Apr 2023 15:04:50 +0000 (17:04 +0200)]
; * etc/NEWS: Fix typos.
Eli Zaretskii [Sat, 1 Apr 2023 10:07:42 +0000 (13:07 +0300)]
Fix ModelSim error regexp in vhdl-mode
* lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix ModelSim
error regexp. Suggested by Reto Zimmermann <reto@gnu.org>.
(Bug#62508)
Eli Zaretskii [Sat, 1 Apr 2023 10:00:36 +0000 (13:00 +0300)]
; * doc/emacs/trouble.texi (Checklist): Minor copyedits (bug#62320).
Eli Zaretskii [Sat, 1 Apr 2023 09:49:18 +0000 (12:49 +0300)]
Document enhancements in handling of echo-area messages
* etc/NEWS:
* doc/lispref/display.texi (Displaying Messages):
* lisp/minibuffer.el (inhibit-message-regexps)
(set-message-functions, inhibit-message, set-multi-message):
Improve the documentation of functions dealing with display of
echo-area messages.
Mattias Engdegård [Sat, 1 Apr 2023 08:53:50 +0000 (10:53 +0200)]
; * src/fns.c: Use if instead of #ifdef
* src/fns.c (HAVE_FAST_UNALIGNED_ACCESS, load_unaligned_size_t):
Always define these.
(Fstring_lessp): Use if instead of #ifdef.
Eli Zaretskii [Sat, 1 Apr 2023 06:55:29 +0000 (09:55 +0300)]
; Fix last change
* test/lisp/eshell/eshell-tests.el
(eshell-test/eshell-command/background-pipeline): Fix last change.
Po Lu [Sat, 1 Apr 2023 06:26:45 +0000 (14:26 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Po Lu [Sat, 1 Apr 2023 06:25:47 +0000 (14:25 +0800)]
; * src/fns.c (HAVE_FAST_UNALIGNED_ACCESS): Check in missing edit.
Po Lu [Sat, 1 Apr 2023 06:25:00 +0000 (14:25 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Eli Zaretskii [Sat, 1 Apr 2023 06:24:38 +0000 (09:24 +0300)]
Fix new Eshell tests on MS-Windows
* test/lisp/eshell/eshell-tests.el (eshell-test/eshell-command/background)
(eshell-test/eshell-command/background-pipeline): Allow for ".exe"
in the program's name. This fixes these tests on MS-Windows.
Po Lu [Sat, 1 Apr 2023 06:24:22 +0000 (14:24 +0800)]
; * src/fns.c (Fstring_lessp): Fix coding style.
Po Lu [Sat, 1 Apr 2023 06:23:32 +0000 (14:23 +0800)]
; * src/fns.c (Fstring_lessp): Port to RISCs.
Stefan Kangas [Sat, 1 Apr 2023 04:00:47 +0000 (06:00 +0200)]
Update publicsuffix.txt from upstream
* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/public_suffix_list.dat
dated 2023-03-18 16:17:52 UTC.
Stefan Kangas [Sat, 1 Apr 2023 03:10:48 +0000 (05:10 +0200)]
; Auto-commit of loaddefs files.
Stefan Kangas [Sat, 1 Apr 2023 03:10:47 +0000 (05:10 +0200)]
; Auto-commit of loaddefs files.
Andrew G Cohen [Thu, 16 Mar 2023 10:43:35 +0000 (18:43 +0800)]
Allow null date in gnus-icalendar-event--decode-datefield
* lisp/gnus/gnus-icalendar.el:
(gnus-icalendar-event--decode-datefield): Don't throw an error if the
event date is missing.
Andrew G Cohen [Thu, 9 Mar 2023 08:05:31 +0000 (16:05 +0800)]
Reset 'gnus-current-window-configuration' on edit-form exit.
* lisp/gnus/gnus.el: New variable gnus-prev-cwc.
* lisp/gnus/gnus-art.el (gnus-article-edit-mode):
New local variable gnus-prev-cwc.
(gnus-article-edit-article): Store original
gnus-current-window-configuration as gnus-prev-cwc.
(gnus-article-edit-done, gnus-article-edit-exit): Restore
gnus-current-window-configuration from gnus-prev-cwc.
* lisp/gnus/gnus-eform.el (gnus-edit-form-mode):
New local variable gnus-prev-cwc.
(gnus-edit-form): Store original
gnus-current-window-configuration as gnus-prev-cwc.
(gnus-edit-form-done, gnus-edit-form-exit): Restore
gnus-current-window-configuration from gnus-prev-cwc.
Andrew G Cohen [Sun, 13 Mar 2022 23:59:25 +0000 (07:59 +0800)]
Use completion when mark limiting in gnus summary buffers
* lisp/gnus/gnus-sum.el (gnus-summary-limit-to-marks)
(gnus-summary-limit-exclude-marks): Use completing-read to complete on
marks in the current summary buffer.
Andrew G Cohen [Sun, 13 Mar 2022 23:47:39 +0000 (07:47 +0800)]
Track article while moving between gnus groups
* lisp/gnus/gnus-sum.el (gnus-current-move-article): New variable to
track article while moving.
(gnus-summary-move-article): Set gnus-current-move-article when
moving/copying/crossposting or respooling.
Po Lu [Sat, 1 Apr 2023 00:57:39 +0000 (08:57 +0800)]
Merge remote-tracking branch 'origin/master' into feature/android
Jim Porter [Fri, 31 Mar 2023 00:39:24 +0000 (17:39 -0700)]
Fix using background commands in 'eshell-command'
Do not merge to master.
This regressed due to the patch for bug#53715, which changed how
Eshell pipelines return the processes in the pipeline (bug#62556).
* lisp/eshell/esh-cmd.el (eshell-eval-command): Allow process-pairs.
* test/lisp/eshell/eshell-tests.el (eshell-test/eshell-command/simple)
(eshell-test/eshell-command/pipeline)
(eshell-test/eshell-command/background)
(eshell-test/eshell-command/background-pipeline): New tests.